#include "Cabinet.h"
#include "Chassis.h"

int main(void)
{
	boost::shared_ptr<Cabinet> cabinet(new Cabinet("PC Cabinet"));
	boost::shared_ptr<Chassis> chassis(new Chassis("PC Chassis"));

	cabinet.get()->Add(chassis);

	boost::shared_ptr<Bus> bus(new Bus("MCA Bus"));
	bus.get()->Add(boost::shared_ptr<Card>(new Card("16Mbs Token Ring")));

	chassis.get()->Add(bus);
	chassis.get()->Add(boost::shared_ptr<FloppyDisk>(new FloppyDisk("3.5in Floppy")));

	cout << "The net price is " << chassis.get()->NetPrice() << endl;
}
